O repositório do projeto pode ser um ponto de falha central para todos os ativos, portanto, ele precisa ser confiável,
tolerante a falhas e escalonável para acomodar dados, além disso, precisa apresentar um alto nível de desempenho para
não retardar o desenvolvimento do produto. As principais considerações de hardware, em ordem de prioridade, sobre o
repositório do projeto são as seguintes:
-
Requisitos de memória: A memória é uma das maneiras menos onerosas de aprimorar o desempenho de
uma ferramenta de gerenciamento de configuração. Uma regra prática para saber a quantidade de memória principal
necessária na máquina do servidor é somar todo o espaço do banco de dados utilizado pelo repositório do projeto e
dividi-lo por dois. Por exemplo, 1 MB de memória principal deve ser suficiente para permitir o armazenamento em
cache e a gravação de dados em segundo plano para 2 MB de espaço de banco de dados. A suposição é que metade dos
dados contidos no repositório do projeto será ativamente acessada a qualquer momento;
-
Requisitos de entrada/saída de disco: O segundo gargalo mais provável de desempenho no
ambiente de gerenciamento de configuração é a velocidade em que os dados podem ser gravados no
disco. As operações intensivas de leitura/gravação são check-in, check-out e criação de baseline. É recomendável
que haja um controlador exclusivo e um canal por disco;
-
Largura de banda da rede: Como a ferramenta de gerenciamento de configuração geralmente
é um aplicativo distribuído, possuir confiabilidade e capacidade de rede adequadas são necessárias para um bom
desempenho. A recomendação é colocar máquinas que atuem como hosts do repositório do projeto e das visões na mesma
sub-rede. Se a rede local (LAN) estiver muito saturada (como indicam os timeouts e os tempos de resposta lentos), a
ideia é aumentar a capacidade da rede ou adicionar uma sub-rede para o host da ferramenta;
-
Espaço em disco no repositório do projeto: Dependendo do tamanho de um projeto, pode haver vários
repositórios do projeto e cada um com milhares de arquivos e diretórios. O número de arquivos contido em um
determinado repositório dependerá do tamanho da máquina em que o servidor do repositório está sendo executado e do
número de usuários que acessará os dados simultaneamente. Um repositório de projeto ativo para desenvolvimento de
código de leitura/gravação pode conter menos elementos que um repositório menos volátil que não tenha o mesmo nível
de tráfego de usuário. A capacidade prevista para um repositório de projeto para desenvolvimento de software é de
aproximadamente 3.000 a 5.000 elementos. Uma boa regra geral é reservar espaço em disco para o crescimento e ter
cerca de 50% de espaço livre, alocando 2 GB de armazenamento para cada repositório do projeto.
Dicas: O repositório do projeto deve estar em um servidor exclusivo. Isso significa que o servidor de
repositórios do projeto não deve ser utilizado para:
-
Compilações, builds ou testes;
-
Executar outras ferramentas de terceiros;
-
Um servidor de e-mail;
-
Um servidor Web.
Adaptado de MDS, Metodologia de Desenvolvimento de Sistemas - Ministério da Cultura, 2008.
|